﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PortableMediator.Test.TestModels
{
    public class TestSubscriberBase
    {
        public int BaseMessageSinkVoidCalledCount { get; set; }

        public void BaseMessageSinkVoid(string param)
        {
            BaseMessageSinkVoidCalledCount++;
            Console.WriteLine("BaseMessageSinkVoid:{0}", param);
        }

        public int BaseMessageSinkIFParamCalledCount { get; set; }
        public void BaseMessageSinkIFParam(ITestSubscriber param)
        {
            BaseMessageSinkIFParamCalledCount++;
            Console.WriteLine("BaseMessageSinkIFParam: {0}", param.GetType().Name);
        }

        public int BaseMessageSinkBaseParamCalledCount { get; set; }
        public void BaseMessageSinkBaseParam(TestSubscriberBase param)
        {
            BaseMessageSinkBaseParamCalledCount++;
            Console.WriteLine("BaseMessageSinkBaseParam: {0}", param.GetType().Name);
        }
    }
}
